// 给定一棵二叉搜索树，请找出其中的第k小的结点。 
//例如， （5，3，7，2，4，6，8） 中，按结点数值大小顺序第三小结点的值为4。
import {Tree} from "./base-tree.js"

let t =new Tree();
t.insert(5);
t.insert(3);
t.insert(7);
t.insert(2);
t.insert(4);
t.insert(6);
t.insert(8);

// 递归实现
function KthNode(pRoot, k) {
    const arr = [];
    loopThrough(pRoot, arr);
    if (k > 0 && k <= arr.length) {
      return arr[k - 1];
    }
    return null;
  }

  function loopThrough(node, arr) {
    if (node) {
      loopThrough(node.left, arr);
      arr.push(node);
      loopThrough(node.right, arr);
    }
  }

console.log(KthNode(t.root,4));